/**
 * Created by zhoulin on 2019/4/3.
 */
var companyId = sessionStorageUtils.getJson(storageKey.sessionStorageKey.companyId);
var schoolId = sessionStorageUtils.getJson(storageKey.sessionStorageKey.schoolId);
var schoolMap = sessionStorageUtils.getJson(storageKey.sessionStorageKey.schoolMap);
var ids = "";

//表格初始化配置
var tableInit = function () {
    var columns = [
        {
            title: '全选',
            field: 'select',
            //复选框
            checkbox: true,
            width: 25,
            align: 'center',
            valign: 'middle'
        },
        {
            field: 'id',
            title: 'ID',
            visible: false,
            align: 'center'
        },
        {
            field: 'name',
            title: '班级名称',
            align: 'center'
        },{
            field: 'courseName',
            title: '课程名',
            align: 'center'
        },{
            field: 'teacherName',
            title: '老师',
            align: 'center'
        },
        {
            field: 'begin_date',
            title: '开始上课日期',
            align: 'center',
            // visible: false,
            formatter: function (value, row, index) {
                return formatDate(value);
            }
        },
        {
            field: 'end_date',
            title: '结束上课日期',
            align: 'center',
            // visible: false,
            formatter: function (value, row, index) {
                return formatDate(value);
            }
        },
        {
            field: 'weeks',
            title: '星期',
            align: 'center'
        },
        {
            field: 'times',
            title: '时间范围',
            align: 'center',
            formatter: function (value, row, index) {
                var html = '';
                if (!empty(value)) {
                    var arr = value.split(",");
                    for (let i = 0; i < arr.length; i++) {
                        html += '<span class="label label-primary" style="margin-right: 5px">' + arr[i] + '</span>';
                    }
                }
                return html;
            }
        },
        {
            field: 'is_jump_over',
            title: '是否跳过节假日',
            align: 'center',
            formatter: function (value, row, index) {
                var html = '';
                if (!empty(value)) {
                    if (value == 1) {
                        html = '是';
                    } else if (value == 0) {
                        html = '否';
                    }
                }
                return html;
            }
        },
        {
            field: 'school_id',
            title: '学校',
            align: 'center',
            formatter: function (value, row, index) {
                if (value == null) {
                    return '<span class="label label-warning">公用</span>';
                }
                if (value == schoolId) {
                    return '<span class="label label-primary">'+schoolMap[value]+'</span>';
                } else {
                    return '<span class="label label-warning">'+schoolMap[value]+'</span>';
                }
            }
        },
        {
            field: 'gmt_create',
            title: '创建时间',
            align: 'center',
            visible: false,
            formatter: function (value, row, index) {
                return formatDateTime(value);
            }
        }
    ];

    //请求服务数据时所传参数
    function queryParams(params) {
        return {
            pageNo: params.pageNumber,
            pageSize: params.pageSize,
            companyId: companyId,
            schoolId: schoolId,
            searchText: params.searchText,
            sortName: params.sortName,      //排序列名
            sortOrder: params.sortOrder //排位命令（desc，asc）
        }
    }

    var tableConfig = $.extend(bootstrapTableConfig(_HOST + _API.organization_courseClassTime_list, queryParams, columns), {
        //这里是其他的一些个性化的 bootstrap-table options
        //例如 覆盖一些公共的配置
        //例如 添加一些私有的配置
        showColumns: true,//列显示操作按钮
        ajaxOptions: { //设置自定义请求头
            headers: {
                'Authorization': sessionStorageUtils.getJson(storageKey.sessionStorageKey.token),
                'permCoding': 'courseClassTime:list'
            }
        },
        //例如格式化数据
        responseHandler: function (res) {
            //在ajax获取到数据，渲染表格之前，修改数据源
            //console.log(res)
            if (res.success) {
                //更新本地token
                sessionStorageUtils.setJsonStr(storageKey.sessionStorageKey.token, res.token);
            }
            return res;
        }
    });
    //调用实例化
    $('#bootstrapTableEvents').bootstrapTable(tableConfig);
    $(".search input").attr('placeholder', '输入班级名称/老师/课程名称搜索');
};

var app = new Vue({
    el: '#app',
    data: {
        permissions: ['courseClassTime:add'],//本页权限数组
    },
    //进入页面初始化方法
    created: function () {
        var that = this;
        var token = sessionStorageUtils.getJson(storageKey.sessionStorageKey.token);
        if (empty(token)) {
            layer.msg("<span style='color:red'>登录超时！请重新登录！</span>", {time: 1500, icon: 5});
            setTimeout(function () {
                window.location.href = _LOGIN_PAGE;
            }, 1200);

            return;
        }
    },
    methods: {
        //权限控制
        permission: function (index) {
            return (_PERMISSIONS.indexOf(this.permissions[index]) != -1);
        },
        //添加
        add: function () {
            var that = this;
            var index = layer.open({
                type: 2,
                title: "新增",
                content: "edit.html?id=",
                fix: true,
                shadeClose: true,
                shade: false,
                area: ['70%', '70%'],
                maxmin: true, //开启最大化最小化按钮
            });
            layer.full(index);
        },
    },
});

$(function () {
    //初始化表格
    tableInit();
});
